#ifndef QT_URL_EDITOR_MANAGER
#define QT_URL_EDITOR_MANAGER

#include <QWidget>
#include <qtpropertybrowser.h>
#include <QMap>
#include <QUrl>
class QtUrlEditorManager : public QtAbstractPropertyManager
{
    Q_OBJECT
public:
    QtUrlEditorManager(QObject *parent=0);
    virtual ~QtUrlEditorManager();
    //QtProperty * addProperty (const QString &name=QString());
    QUrl value(QtProperty* property_ptr);
    QString filter(QtProperty* property_ptr);
public slots:
    void setValue(QtProperty * property_ptr, const QUrl & value_str);
    void setFilter(QtProperty * property_ptr, const QString & filter_str);

signals:
    void valueChanged(QtProperty*,const QUrl&);
protected:
    virtual void initializeProperty (QtProperty *property);
    virtual QString	valueText (const QtProperty *property) const;
private:
    struct Data {
        QUrl value;
        QString filter;
    };
    QMap<const QtProperty *, Data> m_propertyPtrToData;
};

#endif // QT_URL_EDITOR_MANAGER
